<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>构造函数中的toString</title>
</head>
<body>
<script>
    /*当我们直接在页面中打印一个对象时，事件上输出的对象是toString()方法的返回值
    * 如果我们希望在输出对象时不输出[object Object]，可以为对象添加一个toString()方法
    *
    *
    *
    * */
    function Person(name,age,gender) {
            this.name=name;
            this.age=age;
            this.gender=gender;
    }
    var per=new Person("孙悟空",18,"男");//创建一个Person实例
    var per1=new Person("猪八戒",18,"男");//创建一个Person实例
    Person.prototype.toString=function () {//为对象添加toString方法
        // return "我是一个快乐的小Person";
        //我希望打印一个Person[name=孙悟空,age=18,gender=男]
        return "Person[name="+this.name+",age="+this.age+",gender="+this.gender+"]";//demo
        //"Person[name="+this.name+",age="+this.age+",gender="+this.gender+"]";
    };
    var result=per.toString();
    // console.log("result=" +result);//返回是result=[object Object] 添加问toString方法以后返回值result=我是一个快乐的小Person
    // console.log(per.__proto__.__proto__.hasOwnProperty("toString"));//true
    console.log(per);
</script>
</body>
</html>